<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>CommandLineRunner (Closure Compiler)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="CommandLineRunner (Closure Compiler)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/google/javascript/jscomp/CodingConventions.Proxy.html" title="class in com.google.javascript.jscomp"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../com/google/javascript/jscomp/CompilationLevel.html" title="enum in com.google.javascript.jscomp"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/google/javascript/jscomp/CommandLineRunner.html" target="_top">Frames</a></li>
<li><a href="CommandLineRunner.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.google.javascript.jscomp</div>
<h2 title="Class CommandLineRunner" class="title">Class CommandLineRunner</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.google.javascript.jscomp.CommandLineRunner</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">CommandLineRunner</span>
extends java.lang.Object</pre>
<div class="block">CommandLineRunner translates flags into Java API calls on the Compiler.

 This class may be extended and used to create other Java classes
 that behave the same as running the Compiler from the command line. If you
 want to run the compiler in-process in Java, you should look at this class
 for hints on what API calls to make, but you should not use this class
 directly.

 Example:
 <pre>
 class MyCommandLineRunner extends CommandLineRunner {
   MyCommandLineRunner(String[] args) {
     super(args);
   }

   <code>@Override</code> protected CompilerOptions createOptions() {
     CompilerOptions options = super.createOptions();
     addMyCrazyCompilerPassThatOutputsAnExtraFile(options);
     return options;
   }

   public static void main(String[] args) {
     MyCommandLineRunner runner = new MyCommandLineRunner(args);
     if (runner.shouldRunCompiler()) {
       runner.run();
     } else {
       System.exit(-1);
     }
   }
 }
 </pre>

 This class is totally not thread-safe.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested_class_summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a></strong></code>
<div class="block">An exception thrown when command-line flags are used incorrectly.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.WarningGuardSpec.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.WarningGuardSpec</a></strong></code>
<div class="block">A little helper class to make it easier to collect warning types
 from --jscomp_error, --jscomp_warning, and --jscomp_off.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#CommandLineRunner(java.lang.String[])">CommandLineRunner</a></strong>(java.lang.String[]&nbsp;args)</code>
<div class="block">Create a new command-line runner.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#CommandLineRunner(java.lang.String[], java.io.PrintStream, java.io.PrintStream)">CommandLineRunner</a></strong>(java.lang.String[]&nbsp;args,
                 java.io.PrintStream&nbsp;out,
                 java.io.PrintStream&nbsp;err)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#checkModuleName(java.lang.String)">checkModuleName</a></strong>(java.lang.String&nbsp;name)</code>
<div class="block">Validates the module name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../com/google/javascript/jscomp/Compiler.html" title="class in com.google.javascript.jscomp">Compiler</a></code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#createCompiler()">createCompiler</a></strong>()</code>
<div class="block">Returns the instance of the Compiler to use when <a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#run()"><code>run()</code></a> is
 called.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.util.List&lt;<a href="../../../../com/google/javascript/jscomp/SourceFile.html" title="class in com.google.javascript.jscomp">SourceFile</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#createExterns()">createExterns</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.util.List&lt;<a href="../../../../com/google/javascript/jscomp/SourceFile.html" title="class in com.google.javascript.jscomp">SourceFile</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#createInputs(java.util.List, boolean)">createInputs</a></strong>(java.util.List&lt;java.lang.String&gt;&nbsp;files,
            boolean&nbsp;allowStdIn)</code>
<div class="block">Creates inputs from a list of files.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../com/google/javascript/jscomp/CompilerOptions.html" title="class in com.google.javascript.jscomp">CompilerOptions</a></code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#createOptions()">createOptions</a></strong>()</code>
<div class="block">Returns the instance of the Options to use when <a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#run()"><code>run()</code></a> is called.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#doRun()">doRun</a></strong>()</code>
<div class="block">Parses command-line arguments and runs the compiler.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.io.OutputStream</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#filenameToOutputStream(java.lang.String)">filenameToOutputStream</a></strong>(java.lang.String&nbsp;fileName)</code>
<div class="block">Converts a file name into a Outputstream.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected com.google.javascript.jscomp.AbstractCommandLineRunner.CommandLineConfig</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#getCommandLineConfig()">getCommandLineConfig</a></strong>()</code>
<div class="block">Get the command line config, so that it can be initialized.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected A</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#getCompiler()">getCompiler</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../../../../com/google/javascript/jscomp/SourceFile.html" title="class in com.google.javascript.jscomp">SourceFile</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#getDefaultExterns()">getDefaultExterns</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../com/google/javascript/jscomp/DiagnosticGroups.html" title="class in com.google.javascript.jscomp">DiagnosticGroups</a></code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#getDiagnosticGroups()">getDiagnosticGroups</a></strong>()</code>
<div class="block">The warning classes that are available from the command-line.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.io.PrintStream</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#getErrorPrintStream()">getErrorPrintStream</a></strong>()</code>
<div class="block">Returns the PrintStream for writing errors associated with this
 AbstractCommandLineRunner.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#isInTestMode()">isInTestMode</a></strong>()</code>
<div class="block">Returns whether we're in test mode.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#main(java.lang.String[])">main</a></strong>(java.lang.String[]&nbsp;args)</code>
<div class="block">Runs the Compiler.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#run()">run</a></strong>()</code>
<div class="block">Runs the Compiler and calls System.exit() with the exit status of the
 compiler.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#setRunOptions(com.google.javascript.jscomp.CompilerOptions)">setRunOptions</a></strong>(<a href="../../../../com/google/javascript/jscomp/CompilerOptions.html" title="class in com.google.javascript.jscomp">CompilerOptions</a>&nbsp;options)</code>
<div class="block">Sets options based on the configurations set flags API.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#shouldRunCompiler()">shouldRunCompiler</a></strong>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="CommandLineRunner(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CommandLineRunner</h4>
<pre>protected&nbsp;CommandLineRunner(java.lang.String[]&nbsp;args)</pre>
<div class="block">Create a new command-line runner. You should only need to call
 the constructor if you're extending this class. Otherwise, the main
 method should instantiate it.</div>
</li>
</ul>
<a name="CommandLineRunner(java.lang.String[], java.io.PrintStream, java.io.PrintStream)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CommandLineRunner</h4>
<pre>protected&nbsp;CommandLineRunner(java.lang.String[]&nbsp;args,
                 java.io.PrintStream&nbsp;out,
                 java.io.PrintStream&nbsp;err)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="createOptions()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createOptions</h4>
<pre>protected&nbsp;<a href="../../../../com/google/javascript/jscomp/CompilerOptions.html" title="class in com.google.javascript.jscomp">CompilerOptions</a>&nbsp;createOptions()</pre>
<div class="block">Returns the instance of the Options to use when <a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#run()"><code>run()</code></a> is called.
 createCompiler() is called before createOptions(), so getCompiler()
 will not return null when createOptions() is called.</div>
</li>
</ul>
<a name="createCompiler()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createCompiler</h4>
<pre>protected&nbsp;<a href="../../../../com/google/javascript/jscomp/Compiler.html" title="class in com.google.javascript.jscomp">Compiler</a>&nbsp;createCompiler()</pre>
<div class="block">Returns the instance of the Compiler to use when <a href="../../../../com/google/javascript/jscomp/CommandLineRunner.html#run()"><code>run()</code></a> is
 called.</div>
</li>
</ul>
<a name="createExterns()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createExterns</h4>
<pre>protected&nbsp;java.util.List&lt;<a href="../../../../com/google/javascript/jscomp/SourceFile.html" title="class in com.google.javascript.jscomp">SourceFile</a>&gt;&nbsp;createExterns()
                                            throws <a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a>,
                                                   java.io.IOException</pre>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a></code></dd>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
<a name="getDefaultExterns()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultExterns</h4>
<pre>public static&nbsp;java.util.List&lt;<a href="../../../../com/google/javascript/jscomp/SourceFile.html" title="class in com.google.javascript.jscomp">SourceFile</a>&gt;&nbsp;getDefaultExterns()
                                                    throws java.io.IOException</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>a mutable list</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
<a name="shouldRunCompiler()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldRunCompiler</h4>
<pre>public&nbsp;boolean&nbsp;shouldRunCompiler()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>Whether the configuration is valid.</dd></dl>
</li>
</ul>
<a name="main(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>main</h4>
<pre>public static&nbsp;void&nbsp;main(java.lang.String[]&nbsp;args)</pre>
<div class="block">Runs the Compiler. Exits cleanly in the event of an error.</div>
</li>
</ul>
<a name="isInTestMode()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInTestMode</h4>
<pre>protected&nbsp;boolean&nbsp;isInTestMode()</pre>
<div class="block">Returns whether we're in test mode.</div>
</li>
</ul>
<a name="getCommandLineConfig()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCommandLineConfig</h4>
<pre>protected&nbsp;com.google.javascript.jscomp.AbstractCommandLineRunner.CommandLineConfig&nbsp;getCommandLineConfig()</pre>
<div class="block">Get the command line config, so that it can be initialized.</div>
</li>
</ul>
<a name="getDiagnosticGroups()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDiagnosticGroups</h4>
<pre>protected&nbsp;<a href="../../../../com/google/javascript/jscomp/DiagnosticGroups.html" title="class in com.google.javascript.jscomp">DiagnosticGroups</a>&nbsp;getDiagnosticGroups()</pre>
<div class="block">The warning classes that are available from the command-line.</div>
</li>
</ul>
<a name="setRunOptions(com.google.javascript.jscomp.CompilerOptions)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRunOptions</h4>
<pre>protected&nbsp;void&nbsp;setRunOptions(<a href="../../../../com/google/javascript/jscomp/CompilerOptions.html" title="class in com.google.javascript.jscomp">CompilerOptions</a>&nbsp;options)
                      throws <a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a>,
                             java.io.IOException</pre>
<div class="block">Sets options based on the configurations set flags API.
 Called during the run() run() method.
 If you want to ignore the flags API, or interpret flags your own way,
 then you should override this method.</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a></code></dd>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
<a name="getCompiler()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompiler</h4>
<pre>protected final&nbsp;A&nbsp;getCompiler()</pre>
</li>
</ul>
<a name="run()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>run</h4>
<pre>public final&nbsp;void&nbsp;run()</pre>
<div class="block">Runs the Compiler and calls System.exit() with the exit status of the
 compiler.</div>
</li>
</ul>
<a name="getErrorPrintStream()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getErrorPrintStream</h4>
<pre>protected&nbsp;java.io.PrintStream&nbsp;getErrorPrintStream()</pre>
<div class="block">Returns the PrintStream for writing errors associated with this
 AbstractCommandLineRunner.</div>
</li>
</ul>
<a name="createInputs(java.util.List, boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createInputs</h4>
<pre>protected&nbsp;java.util.List&lt;<a href="../../../../com/google/javascript/jscomp/SourceFile.html" title="class in com.google.javascript.jscomp">SourceFile</a>&gt;&nbsp;createInputs(java.util.List&lt;java.lang.String&gt;&nbsp;files,
                                      boolean&nbsp;allowStdIn)
                                           throws <a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a>,
                                                  java.io.IOException</pre>
<div class="block">Creates inputs from a list of files.

 Can be overridden by subclasses who want to pull files from different
 places.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>files</code> - A list of filenames</dd><dd><code>allowStdIn</code> - Whether '-' is allowed appear as a filename to represent
        stdin. If true, '-' is only allowed to appear once.</dd>
<dt><span class="strong">Returns:</span></dt><dd>An array of inputs</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a></code></dd>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
<a name="checkModuleName(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkModuleName</h4>
<pre>protected&nbsp;void&nbsp;checkModuleName(java.lang.String&nbsp;name)
                        throws <a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a></pre>
<div class="block">Validates the module name. Can be overridden by subclasses.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - The module name</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a></code> - if the validation fails</dd></dl>
</li>
</ul>
<a name="doRun()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doRun</h4>
<pre>protected&nbsp;int&nbsp;doRun()
             throws <a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a>,
                    java.io.IOException</pre>
<div class="block">Parses command-line arguments and runs the compiler.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>system exit status</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../com/google/javascript/jscomp/AbstractCommandLineRunner.FlagUsageException.html" title="class in com.google.javascript.jscomp">AbstractCommandLineRunner.FlagUsageException</a></code></dd>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
<a name="filenameToOutputStream(java.lang.String)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>filenameToOutputStream</h4>
<pre>protected&nbsp;java.io.OutputStream&nbsp;filenameToOutputStream(java.lang.String&nbsp;fileName)
                                               throws java.io.IOException</pre>
<div class="block">Converts a file name into a Outputstream.
 Returns null if the file name is null.</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/google/javascript/jscomp/CodingConventions.Proxy.html" title="class in com.google.javascript.jscomp"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../com/google/javascript/jscomp/CompilationLevel.html" title="enum in com.google.javascript.jscomp"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/google/javascript/jscomp/CommandLineRunner.html" target="_top">Frames</a></li>
<li><a href="CommandLineRunner.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
